﻿namespace UserStories.Models
{
    using System.Collections.Generic;

    public interface IProjectsService
    {
        IEnumerable<Project> ProjectsForIndex();

        Project ProjectForEdit(int id);

        IEnumerable<Role> Roles();

        IEnumerable<User> Users();

        User User(string username);
        
        IEnumerable<PokerCard> PokerCards();

        void Save(Project project);

        void Save(User user);

        void Save(Sprint sprint);

        Sprint Sprint(int id);

        IEnumerable<UserStory> UsersStoriesForProject(int projectId);

        bool IsValidUser(string userName, string password);

        void SaveAsSysAdmin(Project project);

        void SaveAsProductOwner(Project project);

        void SaveAsScrumMaster(Project project);
    }
}